package com.ray.mapper;

import java.util.List;
import java.util.Map;

import com.ray.bean.CompanyMaterialTableBean;
import com.ray.bean.FeedUseMaterialCountBean;
import com.ray.bean.OrderInfoDetailBean;
import com.ray.bean.OtherWarehouseBean;
import com.ray.pojo.ReturnOrderDetailPojo;

public interface ProductionUnitFeedMapper {
	
	/**
	 *  获取其他仓位的相同物料库存信息(相同单位)
	* @date 2018年7月13日 上午7:32:23 
	* @author 李斌
	* @return OtherWarehouseBean 
	* @throws
	 */
	OtherWarehouseBean getOtherWarehouseByMaterialOnUnit(Map<String,Object> map);
	
	/**
	 * 通过物料代码获取物料(外加生产单位库存数量)
	* @date 2018年7月13日 上午7:47:05 
	* @author 李斌
	* @return CompanyMaterialTableBean 
	* @throws
	 */
	CompanyMaterialTableBean getCompanyMaterialByMaterialCode(Map<String,Object> map);
	
	/**
	 * 获取投料单占用的生产单位物料数
	* @date 2018年7月13日 上午7:55:48 
	* @author 李斌 
	* @return FeedUseMaterialCountBean 
	* @throws
	 */
	FeedUseMaterialCountBean getFeedUseMaterialProductionUnitCount(Map<String,Object> map);
	
	/**
	 * 通过相应信息查找匹配的订单明细信息
	* @date 2018年7月17日 上午8:48:30 
	* @author 李斌
	* @return List<OrderInfoDetailBean> 
	* @throws
	 */
	List<OrderInfoDetailBean> getOrderIdOnOrderInfoDetailByOrderDetail(Map<String, Object> map);
	/**
	 * 获取未生成投料单的订单(汇总)
	* @date 2018年7月18日 上午11:37:27 
	* @author 李斌
	* @return List<OrderInfoDetailBean> 
	* @throws
	 */
/*	List<OrderInfoDetailBean> getOrderInfoDetailByNotFeed(Map<String, Object> map);*/
	//获取未生成投料单的订单(汇总)分页
	List<OrderInfoDetailBean> getOrderInfoDetailByNotFeedData(Map<String, Object> map);
	int getOrderInfoDetailByNotFeedCount(Map<String, Object> map);
	
	
	/**
	 * 通过物料信息与订单信息获取合并前的订单明细数据
	* @date 2018年7月18日 下午4:13:00  
	* @author 李斌
	* @return List<OrderInfoDetailBean> 
	* @throws
	 */
	List<OrderInfoDetailBean> getOrderInfoDetailByMaterial(Map<String, Object> materialMap);
	/**
	 * 获取退回物料订单信息
	* @date 2018年7月23日 上午11:19:53 
	* @author 李斌
	* @return List<ReturnOrderDetailPojo> 
	* @throws
	 */
	List<ReturnOrderDetailPojo> getReturnOrderDetail(Map<String, Object> map);
	
	//获取当前订单的订单信息(开料尺寸与投料数)
	ReturnOrderDetailPojo getNowOrderDetail(Map<String, Object> map);

	

	
	
	
	
}
